Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

AEx: Automated processor exploration #235

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open

AEx: Automated processor exploration #235

wants to merge 1 commit into from

Conversation

TopiLeppanen
Copy link
Contributor

Add the methodology from AEx JSPS paper.
Simultaneously upstream other small explorer changes and fix up tests relevant to those.

Add the methodology from AEx JSPS paper.
Simultaneously upstream other small explorer changes
and fix up tests relevant to those.
@@ -8,6 +8,13 @@ Notable changes and features
Now it's possible to optionally give a list of pairs of
<address-space-name>,<data-start>.
- Added the same option to generatebits with the same syntax.
- Automated Processor Exploration
- Open-sourcing the methodology described in:
"AEx: Automated High-Level Synthesis of Compiler Programmable Co-Processors"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pls add a link to the paper.


BusMergeMinimizer tries to optimize a machine's interconnection network by "merging" two buses into one, which then has the connections of both original buses.
A simulation trace based heuristic decides which buses to merge: the idea is that when buses are seldom active at the same time, they can be merged without hurting performance much.
There is more information in the paper "Greedy Heuristics for Transport Triggered Architecture Interconnect Exploration".
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pls add a link here as well.

@@ -0,0 +1,361 @@
/*
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGPL v2.1 license should be used here.

@@ -0,0 +1,670 @@
/*
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGPL v2.1 (also to other source files, not mentioning them separately).

using namespace TTAMachine;
using namespace HDB;

const int ALLOPERATIONAMCHINE = 0;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Change to enum?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also the names should be underscore separated.

@@ -30,32 +30,36 @@
* @note rating: red
*/

#include <vector>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This file also seems to have the MIT license.

@pjaaskel
Copy link
Contributor

Let's pull this in for 2.2?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants